AWS Storage System API - Implementation Template
Setup guide
Importing Templates into Anypoint Studio
- In Studio, click the Exchange X icon in the upper left of the taskbar.
- Log in with your Anypoint Platform credentials.
- Search for the template.
- Click Open.
Running Templates in Anypoint Studio
After you import your template into Studio, follow these configuration steps to run it.
HLS AWS Storage Application Configuration
The application requires a few things to be configured, mainly the system API connection information. Configure them in the properties file located in the config/properties folder.
- mule.envis the environment where the application is to be deployed. For a studio deployment, the recommended- mule.envvalue is- local.
- mule.encryptionKeyis the encryption key for securing sensitive properties.
- amazon.s3.roleARN— sets the ARN identifier. It should be configured in- config-<mule.env>.yamlfile.
- amazon.s3.bucket.baseUrl— sets the AWS S3 bucket base URL. It should be configured in- config-<mule.env>.yamlfile.
- amazon.s3.region— sets the AWS region. It should be configured in- config-<mule.env>.yamlfile.
- amazon.s3.accesKey— sets the AWS S3 accesKey. It should be encrypted and configured in- config-secured-<mule.env>.yamlfile.
- amazon.s3.secretKey— sets the AWS S3 secretKey. It should be encrypted and configured in- config-secured-<mule.env>.yamlfile.
Please refer to the attached link on how to secure the configuration properties.
HTTP Configuration
- http.host— sets the service host interface. It should be configured in- config-<mule.env>.yamlfile. (Default: 0.0.0.0 for all interfaces).
- http.port— sets the service port number. It should be configured in- config-<mule.env>.yamlfile. (Default: 8081).
Tested and verified
This solution was developed and tested on Anypoint Studio 7.11.1 and Mule Runtime 4.4.0.
Run the application
- Right-click the template project folder.
- Hover your mouse over 'Run as'.
- Click Mule Application (configure).
- Inside the dialog, select Environment and set the variable mule.env to the appropriate value (e.g., dev or local).
- Inside the dialog, select Environment and set the variable mule.key to the property encryption key that you used to encrypt your secure properties.
- Inside the dialog, go to 'Clear Application Data' select 'always' radio button.
- Click Run.
Deployment instructions for CloudHub using provided scripts
Ensure the Maven profile CloudHub-DEV has been properly configured in your settings.xml file. A reference of configuration settings is available. Download the Accelerator Common Resources asset. Additional instructions are available in the Getting Started with MuleSoft Accelerators - Build Environment guide.
Update the config-<env>.yaml properties appropriately and then use one of the following scripts to deploy the application to CloudHub:
- packageDeploy.sh or deployOnly.sh (Mac/Linux).
- packageDeploy.cmd or deployOnly.cmd (Windows).
Test the template
- Use Advanced Rest Client or Postman to send a request over HTTPS. The template includes a Postman collection in the src/test/resourcesfolder.